package com.nanjia.boot.delivery.model.form;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import jakarta.validation.constraints.Size;
import lombok.Getter;
import lombok.Setter;

import java.io.Serial;
import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * 证件表单对象
 *
 * @author 周洋
 * @since 2025-06-13 11:09
 */
@Getter
@Setter
@Schema(description = "证件表单对象")
@JsonIgnoreProperties(ignoreUnknown = true)
public class CertificateForm implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;

    @NotBlank(message = "不能为空")
    @Size(max=30, message="长度不能超过30个字符")
    private String certificateTypeCode;

    @NotBlank(message = "不能为空")
    @Size(max=100, message="长度不能超过100个字符")
    private String certificateNumber;

    @NotBlank(message = "不能为空")
    @Size(max=100, message="长度不能超过100个字符")
    private String certificateName;

    @Schema(description = "0：停止，1：正常：2：待审核；3：待补充资料,-1：已删除")
    @NotNull(message = "0：停止，1：正常：2：待审核；3：待补充资料,-1：已删除不能为空")
    private Integer certificateStatus;

    private LocalDateTime startTime;
    private LocalDateTime expireTime;

    private String imgfiles;

    private Integer forever;
}
